home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Mission 3
/
Mission 3.zip
/
Mission 3.iso
/
demovers
/
texel
/
skripte
/
_1.tsc
next >
Wrap
Text File
|
1997-11-23
|
1KB
|
57 lines
// MMult(bereich1,bereich2,bereichZ)
// tm 97-11-23
// multipliziert die zwei Matrizen bereich1,bereich2
// und schreibt das Ergebnis ab der linken oberen Zelle
// des Zielbereichs ins Blatt
proc main(...)
{
if (argc<5) exit(1);
datei = argv[0];
zelle = argv[1];
if (address("texel"))
{
m1 = GetRange(argv[2],datei);
m2 = GetRange(argv[3],datei);
dest = GetRange(argv[4],datei);
r1s = m1[0];
c1s = m1[1];
r1e = m1[2];
c1e = m1[3];
r2s = m2[0];
c2s = m2[1];
r2e = m2[2];
c2e = m2[3];
dr = dest[0];
dc = dest[1];
if (((r1e - r1s) == (c2e - c2s)) && ((c1e - c1s) == (r2e - r2s)))
{
for (r=r1s; r<=r1e; r++)
{
for (c=c2s; c<=c2e; c++)
{
wert = 0.0;
for (i=c1s; i<=c1e; i++)
{
z1 = GetCell(r,i,datei);
z2 = GetCell(i+r2s-c1s,c,datei);
wert += z1*z2;
}
SetCell(r+dr-r1s,c+dc-c2s,wert,datei);
}
}
}
ReturnCellValue(datei,zelle,0.0);
}
}